package com.neuedu.His02.controller.outpatientDoctorWorkStation;

import com.neuedu.His02.entity.*;
import com.neuedu.His02.service.outpatientDoctorWorkStationService.PatentPrescriptionService;
import com.neuedu.His02.util.EnumCode;
import com.neuedu.His02.util.ResultUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * @author GSJ
 * @description 成药处方控制类
 */
@RestController
public class PatentPrescriptionController {

    @Resource
    private PatentPrescriptionService service;

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 初始化患者信息
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/initPatients")
    public ResultUtil initPatients(@RequestBody User user) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 根据姓名搜索患者
     */
    @RequestMapping("/outpatientDoctorWorkStation/patentPrescription/searchByName")
    public ResultUtil searchByName(Register user) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 根据病历号搜索患者
     */
    @RequestMapping("/outpatientDoctorWorkStation/patentPrescription/searchByNumber")
    public ResultUtil searchByNumber(Register user) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 初始化患者的成药处方
     */
    @RequestMapping("/outpatientDoctorWorkStation/patentPrescription/initPrescription")
    public ResultUtil initRecord(MedicalRecord user) {


        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 暂存患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/tempPrescription")
    public ResultUtil tempPrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 发送患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/sendPrescription")
    public ResultUtil sendPrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 开立患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/commitPrescription")
    public ResultUtil commitPrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 删除患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/deletePrescription")
    public ResultUtil deletePrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 作废患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/cancelPrescription")
    public ResultUtil cancelPrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 获取患者的挂号ID
     */
    @RequestMapping("/outpatientDoctorWorkStation/patentPrescription/getMedicalID")
    public ResultUtil getMedicalID(MedicalRecord medicalRecord) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 新增患者的处方
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/addPrescription")
    public ResultUtil addPrescription(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 查询处方明细
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/initDetail")
    public ResultUtil initDetail(@RequestBody Prescription prescription) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 初始化药品列表
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/initDrugsPrepare")
    public ResultUtil initDrugsPrepare() {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 增加药品
     */
    @RequestMapping("/outpatientDoctorWorkStation/patentPrescription/addDrugs")
    public ResultUtil addDrugs(PrescriptionDetailed prescriptionDetailed) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 删除药品
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/deleteDrugs")
    public ResultUtil deleteDrugs(@RequestBody PrescriptionDetailed prescriptionDetailed) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 生成成药模板(个人)
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/getDrugsTemplatePersonally")
    public ResultUtil getDrugsTemplatePersonally(@RequestBody User user) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 生成成药模板(科室)
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/getDrugsTemplateByDepartment")
    public ResultUtil getDrugsTemplateByDepartment(@RequestBody User user) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 生成成药模板(全院)
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/getDrugsTemplateByHospital")
    public ResultUtil getDrugsTemplateByHospital() {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 生成成药明细
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/chooseTemplate")
    public ResultUtil chooseTemplate(@RequestBody DrugsTemplate drugsTemplate) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 删除成药模板
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/deleteTemplate")
    public ResultUtil deleteTemplate(@RequestBody DrugsTemplate drugsTemplate) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 添加成药模板
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/addTemplateConfirm")
    public ResultUtil addTemplateConfirm(@RequestBody DrugsTemplate drugsTemplate) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 删除成药模板明细
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/deleteTemplateDetail")
    public ResultUtil deleteTemplateDetail(@RequestBody DrugsDetailed drugsDetailed) {
        return null;
    }

    /**
     * @return {@link ResultUtil}
     * @author GSJ
     * @description 添加成药模板明细
     */
    @PostMapping("/outpatientDoctorWorkStation/patentPrescription/addTemplateDetailConfirm")
    public ResultUtil addTemplateDetailConfirm(@RequestBody DrugsDetailed drugsDetailed) {
        return null;
    }
}
